home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 April: Mac OS SDK / Dev.CD Apr 98 SDK1.toast / Development Kits (Disc 1) / AppleSearch / Windows / AppleSearch for Windows SDK / H / NPDCUT.H < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-25  |  4.2 KB  |  115 lines  |  [TEXT/dosa]

  1. /*
  2.     File:        NPDataContainerUtilities.h
  3.  
  4.     Copyright (C) 1992-1995 Apple Computer, Inc.  All rights reserved.
  5.  
  6.     Change History (most recent first):
  7.  
  8.         <9+>      8/8/93    KAZU        added header
  9.  
  10. */
  11. /*===============================================================================================================
  12.  
  13.         ASUpdateDCUtilities.h
  14.     
  15.           Copyright Apple Computer, Inc. 1992-1995
  16.         All rights reserved
  17.  
  18. ===============================================================================================================*/
  19.  
  20. #ifndef __NPDATACONTAINERUTILITIES__
  21. #define __NPDATACONTAINERUTILITIES__
  22.  
  23. //_______________________________________________________________________________________________________________
  24. //____________________________________________________ INCLUDES _________________________________________________
  25. //_______________________________________________________________________________________________________________
  26.  
  27. #if defined( MACINTOSH )
  28.  
  29. #include <Files.h>
  30.  
  31. #ifndef __NPTYPES__
  32. #include "NPTypes.h"
  33. #endif                                                
  34.  
  35. #ifndef __NPCONSTANTS__
  36. #include "NPConstants.h"
  37. #endif                                                
  38.  
  39. #endif
  40.  
  41. #if defined( WINDOWS )
  42.  
  43. #ifndef __NPTYPES__
  44. #include "NPTypes.h"
  45. #endif                                                
  46.  
  47. #ifndef __NPCONSTANTS__
  48. #include "NPConst.h"
  49. #endif                                                
  50.  
  51. #endif //WINDOWS
  52.  
  53.  
  54. //_______________________________________________________________________________________________________________
  55. //_____________________________________________________ STRUCTS _________________________________________________
  56. //_______________________________________________________________________________________________________________
  57.  
  58. struct ASUDCHeader {
  59.     ASUDataSize        dataContainerSize;
  60.     ASUDCType        dataContainerType;
  61.     long            dataContainerID;
  62.     long            userRefCon;
  63. };
  64. typedef struct ASUDCHeader ASUDCHeader, *ASUDCHeaderPtr;
  65.  
  66. //_______________________________________________________________________________________________________________
  67. //_______________________________________________ FUNCTION PROTOTYPES ___________________________________________
  68. //_______________________________________________________________________________________________________________
  69. #ifdef __cplusplus
  70. extern "C" {
  71. #endif
  72.  
  73. // read/write routines
  74.  
  75. OSErr pascal ASUAddDataContainer( short refnum, ASUDCHeaderPtr info, ASUCount count, Ptr data, ASUDCPtr *dc );
  76. OSErr pascal ASUDeleteDataContainer( short refnum, ASUDCPtr dc );
  77.  
  78. OSErr pascal    ASUReadDataContainerHeader( short refnum, ASUDCPtr dc, ASUDCHeaderPtr info );
  79. OSErr pascal    ASUWriteDataContainerHeader( short refnum, ASUDCPtr dc, ASUDCHeaderPtr info );
  80.  
  81. OSErr pascal    ASUReadDataContainerData( short refnum, ASUDCPtr dc, ASUOffset start, Ptr data, ASUDataSize* size );
  82. OSErr pascal    ASUWriteDataContainerData( short refnum, ASUDCPtr dc, ASUOffset start, Ptr data, ASUDataSize size );
  83.  
  84. //_______________________________________________________________________________________________________________
  85. // searching routines
  86.  
  87. OSErr pascal    ASUCountDataContainers( short refnum, ASUDCType type, ASUCount* count );
  88. OSErr pascal    ASUFindDataContainer( short refnum, ASUDCType type, ASUDCPtr start, ASUDCPtr *dc );
  89. OSErr pascal    ASUFindDataContainerByID( short refnum, ASUDCType type, long id, ASUDCPtr start, ASUDCPtr *dc );
  90.  
  91. OSErr pascal    ASUGetDataContainerSize( short refnum, ASUDCPtr dc, ASUDataSize* size );
  92. OSErr pascal    ASUGetDataContainerType( short refnum, ASUDCPtr dc, ASUDCType* type );
  93. OSErr pascal    ASUGetDataContainerID( short refnum, ASUDCPtr dc, long* id );
  94. OSErr pascal    ASUGetDataContainerUserRefCon( short refnum, ASUDCPtr dc, long* userRefCon );
  95.  
  96. //_______________________________________________________________________________________________________________
  97. // convenience routines
  98.  
  99. OSErr pascal    ASUSerializeDataContainerIDs( short refnum, ASUDCType type, ASUCount *count );
  100. OSErr pascal    ASULinkDataContainers( short refnum, ASUDCType type, ASUDCPtr head );
  101.  
  102. //_______________________________________________________________________________________________________________
  103.  
  104. #ifdef __cplusplus
  105. }
  106. #endif
  107.  
  108. #endif                                                            // __NPNEWSPAPERUTILITIES__
  109.  
  110. //
  111. // $Log: /bogart/asu/shared/NPDCUT.H $
  112. // 
  113. // 3     5/26/94 11:24a John_fearnside
  114. //
  115.